package com.binhthuan.catechist.server.domain;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import com.google.gson.annotations.Expose;

/**
 * @author Giang Đinh - Loại bài kiểm tra, tương ứng với bảng <b>ec_test_type/b> trong cơ
 *         sở dữ liệu.
 */
@Entity
@Table(name = "ec_test_type")
public class TestType extends AbstractObject {

    /**
     * Mã loại bài kiểm tra.
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id")
    @Expose
    private Integer id;
    
    /**
     * Tên loại bài kiểm tra.
     */
    @Column(name = "name", length = 20)
    @Expose
    private String name;
    
    /**
     * Hệ số.
     */
    @Column(name = "factor")
    @Expose
    private Float factor;

    public TestType() {
    }

    /**
     * Lấy mã loại điểm.
     * @return Mã loại điểm.
     */
    public Integer getId() {
        return id;
    }

    /**
     * Gán mã loại điểm.
     * @param id
     *            Mã loại điểm.
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * Lấy tên loại điểm.
     * @return Tên loại điểm.
     */
    public String getName() {
        return name;
    }

    /**
     * Gán tên loại điểm.
     * @param name
     *            Tên loại điểm.
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * Lấy hệ số.
     * @return Hệ số.
     */
    public Float getFactor() {
        return factor;
    }

    /**
     * Gán hệ số.
     * @param factor
     *            Hệ số.
     */
    public void setFactor(Float factor) {
        this.factor = factor;
    }
}
